package com.module.base.base.adapter.proxy;


import androidx.recyclerview.widget.RecyclerView;

/**
 * @author bsnl_yanxuwen
 * @date 2020/10/16 13:59
 * Description :
 * BaseNewAdapter适配器，对刷新框架的代理
 * 目的是取消刷新框架自带的加载功能，并且刷新跟加载统一个回调
 */
public interface RefreshLayoutProxy {

    public interface OnRefreshListener {
        /**
         * Called when a refresh is triggered.
         */
        void onRefreshing();
    }

    /**
     * 禁用加载功能
     *
     * @param disable true代表禁用
     */
    public void setDisableLoadMore(boolean disable);

    /**
     * 禁用刷新功能
     *
     * @param disable true代表禁用
     */
    public void setDisableRefresh(boolean disable);

    /**
     * 是否显示无数据
     */
    public void setEnableNoMoreData(boolean enable);

    /**
     * 设置开始越界回弹
     */
    public void setEnableOverScroll(boolean enable);

    /**
     * 完成刷新，刷新状态  ,成功或者失败`
     */
    public void refreshComplete(boolean isSuccessful);

    /**
     * 头部关闭时间
     */
    public int getDurationToCloseHeader();


    public void setOnRefreshListener(OnRefreshListener listener);

    /**
     * 嵌套处理
     */
    void onNestRecyclerview(RecyclerView recyclerview);

}
